package com.atguigu.schedule.pojo;

import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;

import java.io.Serializable;

/**
 * 行人跟踪结果
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class PersonTrackingResult implements Serializable {
    
    /**
     * 行人位置 - X坐标
     */
    private int x;
    
    /**
     * 行人位置 - Y坐标
     */
    private int y;
    
    /**
     * 行人宽度
     */
    private int width;
    
    /**
     * 行人高度
     */
    private int height;
    
    /**
     * 跟踪ID（用于连续跟踪）
     */
    private int trackId;
    
    /**
     * 检测时间戳
     */
    private long timestamp;
    
    /**
     * 是否为新检测到的行人
     */
    private boolean isNewPerson;
    
    /**
     * 行人移动速度（像素/秒）
     */
    private double velocity;
    
    public PersonTrackingResult(int x, int y, int width, int height, int trackId) {
        this.x = x;
        this.y = y;
        this.width = width;
        this.height = height;
        this.trackId = trackId;
        this.timestamp = System.currentTimeMillis();
        this.isNewPerson = true;
        this.velocity = 0.0;
    }
}
